#ifndef LOG_ASYNCLOGHELPER_H
#define LOG_ASYNCLOGHELPER_H

#include "AsyncLog.h"
#include "LogFile.h"

struct AsyncLogHelper final {
    AsyncLogHelper(
        std::size_t rollSize, const std::string &prefix,
        const std::string &suffix, bool rename);

    void after_append();
    void append_too_much();

    LogFile file;
    std::array<std::unique_ptr<AsyncLog::Buffer>, 2> reservedBuffers;
    std::vector<std::unique_ptr<AsyncLog::Buffer>> buffers;

};

#endif
